home *** CD-ROM | disk | FTP | other *** search
/ Shareware Super Platinum 8 / Shareware Super Platinum 8.iso / mac / PROGTOOL / PASSDK30.ZIP;1 / DISK1.ZIP / PAS / READ.ME < prev    next >
Encoding:
Text File  |  1993-04-07  |  11.7 KB  |  342 lines

  1.  
  2.            Pro AudioSpectrum Software Development Kit
  3.      Copyright (c) 1991-1993. Media Vision, Inc. All Rights Reserved
  4.  
  5.  
  6.          Final Release    3.00, April 7, 1993
  7.                  Update Release 2.02, October 2, 1992
  8.          Update Release 2.01, October 2, 1992
  9.          Final Release    2.00, July 22, 1992
  10.  
  11.  
  12.     This release of source code for the Pro AudioSpectrum has been
  13. developed with Microsoft MASM, 5.1, and Microsoft C, 6.0, as well as,
  14. Borland C and TASM.
  15.  
  16.     The code on this disk is fully functional. Each routine has been
  17. compiled for tiny, small, and large model.
  18.  
  19.     The contents of this floppy should be copied into the same directory
  20. structure as found on the floppies. When copied on to the hard drive, the
  21. developers kit will build the following directory tree:
  22.  
  23.         \INC
  24.     \SAMPLES
  25.     \PAS  ƒƒƒ¬ƒ INC
  26.          √ƒ MISC
  27.          √ƒ CDROMAPP
  28.          √ƒ PCM
  29.          √ƒ TOOLS
  30.          ¿ƒ SUBS ƒ¬ƒ CDROM
  31.               √ƒ FM
  32.               √ƒ MIDI
  33.               √ƒ MISC
  34.               √ƒ MIXERS
  35.               ≥  ¿ƒƒƒFYI
  36.               √ƒ MVSOUND
  37.               √ƒ PCM
  38.               ¿ƒ VIDEO
  39.  
  40.     To install the contents of the floppies to your hard drive, do
  41. the following:
  42.  
  43.  
  44.         1) Change directories to the root on both the source and
  45.        target drives.
  46.  
  47.        cmd:    c:\>CD \
  48.        cmd:    c:\>CD a:\
  49.  
  50.     2) Use DOS's XCOPY to move the entire contents of the first
  51.        diskette to the hard drive.
  52.  
  53.        cmd:    C:\>XCOPY a:\*.* /s
  54.  
  55.     3) Again, use DOS's XCOPY to move the entire contents of the
  56.        second diskette to the hard drive.
  57.  
  58.        cmd:    >XCOPY a:\*.* /s
  59.  
  60.     4) Once XCOPY is done, you're all done.
  61.  
  62.  
  63.     Remember, to use the MAKE files, set the "INCLUDE" and "LIB"
  64. environment variables before executing MAKE.EXE.
  65.  
  66.    cmd:  SET INCLUDE=c:\inc;c:\pas\inc;%include%
  67.          SET LIB=c:\pas\inc;%include%
  68.  
  69.     Also, If you intend on rebuilding the libraries in this release,
  70. you may have to modify the include and library paths.
  71.  
  72.  
  73.                       ----====< Revision History >====----
  74.  
  75.     Changes as of 04/07/93
  76.  
  77.         1. Each subdirectory now includes a batch file
  78.            called "MK.BAT" that compiles/assembles the code
  79.            using the choosen compiler. To compile and link
  80.            using Borland tools, check out the MK.BAT and
  81.            make files.
  82.  
  83.         2. There is a set of libraries for both Microsoft
  84.            and Borland in the \pas\inc subdirectory.
  85.  
  86.         3. Changes to each module will be documented via the
  87.            SCCS comments at the top of each module.
  88.  
  89.         Changes as of 12/08/92
  90.  
  91.         1. Had to move a lot of external declarations around
  92.            in the .ASM files so large model Borland would not
  93.            barf at link time. The anamoly was fixup-overflows
  94.            on certain subroutine addresses in PCMIOA.ASM,
  95.            MVOUT.ASM, 3812A.ASM, MVSOUND.ASM, etc.
  96.  
  97.         2. There is now an example batch file for building
  98.            PLAYFILE, RECFILE, and CDROM applications. This batch
  99.            file is called "MK.BAT".
  100.  
  101.         3. Large model Borland libraries where missing parts
  102.            of MVSOUND.ASM due to a compile bug. This has been
  103.            fixed.
  104.  
  105.         Changes as of 11/11/92
  106.  
  107.         1. All MAKE files for the libraries have been extensively
  108.            rewritten to support the Borland Tools. Microsoft
  109.            MAKE.EXE compatibility has been dropped in favor of
  110.            NMAKE.EXE. This was done to create across the board
  111.            compatiblity between the two development environments.
  112.  
  113.         2. The number of MAKE files that are used to build the
  114.            libraries have been reduced. Each subdirectory has
  115.            one MAKE that uses internal runtime conditionals.
  116.  
  117.         3. Minor code modifications have been made to various
  118.            modules to be compatible with Borland tools.
  119.  
  120.         4. PCMIOC.C has had extensive work. Memory block allocation
  121.            is done directly through DOS instead of using a 'C'
  122.            library function. Also, file access is performed
  123.            directly through DOS instead of using the 'C' streams.
  124.            This may cause problems with the stream file pointers.
  125.            Assume the file pointers to be corrupted after use by
  126.            PCMIOC.C, and reposition as necessary.
  127.  
  128.         5. DIALOG.C now will dissolve to the original screen.
  129.  
  130.  
  131.     Changes as of 10/02/92
  132.  
  133.         1. MVGetHardware name has been changed for consistency,
  134.            to mvGetHardware.
  135.  
  136.         2. The MIDI lowlevel code had a fatal bug when used in
  137.            large model due to NEAR declaration.
  138.  
  139.         3. PCMIOC.C now has additional routines that provide
  140.            simple, arbitrary block size, record/playback. The
  141.            code is complete, but needs complete documentation.
  142.            Code examples will follow on the next update.
  143.  
  144.         Changes as of 07/22/92
  145.  
  146.                 1. CDROM access routines are provided to start/stop
  147.            music CDs. Reference documentation is included in
  148.            the developers manual.
  149.  
  150.         2. MIDI low level routines have been added. Hardware
  151.            specs are provided in the developers manual.
  152.  
  153.         3. Source code to the mixer interface is provided, with
  154.            major caveats.
  155.  
  156.         4. All low level routines that touch the hardware, now
  157.            reference it indirectly. This allows the code to
  158.            run on board that are using alternate I/O addresses.
  159.            All Pro Audio Spectrums based on the MV101 ASIC, can
  160.            be moved to different I/O locations.
  161.  
  162.         5. Building the libraries can now be accomplished using
  163.            NMAKE or MAKE. All the make files are geared to be
  164.            executed by both utilities. Batch files are included
  165.            to build each model type.
  166.  
  167.         6. 3812.EXE has been replaced by OPL3.EXE. This program
  168.            gives the user point-and-click control over the OPL3
  169.            FM chip.
  170.  
  171.         7. Borland Tools support is forthcoming. The assembler
  172.            code can be compiled using MASM51 and QUIRKS mode. The
  173.            'C' routines still have some areas to be worked out.
  174.  
  175.         8. Source code for PLAYFILE/RECFILE have been updated to
  176.            perform 16 bit digital audio.
  177.  
  178.         9. High order DMA and IRQ channels are supported. See
  179.            MVSOUND.ASM for example code.
  180.  
  181.            10. More sample programs are included, for FM, MIDI, etc.
  182.  
  183.            11. MVSOUND.SYS is required for initializing the hardware
  184.            and performing mixer/volume control.
  185.  
  186.            12. A source code control system has been established at
  187.            Media Vision to track all modules in the developers
  188.            kit. Each source code file contains a log of the
  189.            modifications.
  190.  
  191.         Changes as of 12/02/91
  192.  
  193.         1. MIXERC.C and the static mixer driver have been
  194.            changed slightly to allow the static driver to
  195.            share the same hardware state table as the linked
  196.            library routines. Before, this, two separate
  197.            tables were used, causing a potential miscommun-
  198.            ication between modules.
  199.  
  200.         2. MIXERC.C has a new function call added that allows
  201.            the programmer to load a new hardware state pointer,
  202.            or read the existing one, in the static mixer driver.
  203.            This is only required if the programmer wants to
  204.            use a third table. For most applications, this
  205.            function can be ignored. All the linked and static
  206.            code now use the same table.
  207.  
  208.         2. MIXERC.C had a bug in checking the version number
  209.            of MVSOUND.SYS. This was corrected by adding one
  210.            instruction.
  211.  
  212.         Changes as of 8/26/91
  213.  
  214.         1. StartFileOutput routine has a new parameter. A
  215.            "long" variable that holds the number of bytes to
  216.            be played from the file. Once the bytes have been
  217.            played, the file pointer will point to the next
  218.            byte. To play the whole file, just pass in a -1.
  219.  
  220.         2. PCMState has a new parameter defining the audio
  221.            compression. At the time, it is 0. Look for coming
  222.            updates...
  223.  
  224.         3. PCMIO.H has been updated for the two changes
  225.            mentioned above.
  226.  
  227.         4. The Block IN/OUT API routines in PCMIOC.C has been
  228.            re-written due to problems in starting and stopping
  229.            the DMA buffer. There was popping on playback between
  230.            blocks.
  231.  
  232.         Changes as of 8/21/91
  233.  
  234.         1. RECFILE.EXE had a couple more bugs in creating the
  235.            .WAV header. Both RECFILE.EXE and FIXWAVE.EXE have
  236.            been updated to fix these problems.
  237.  
  238.         2. PCMIOC.C had a bug in ASpecialContinueFileInput which
  239.            included discarded blocks in the "ProcessedBlockCount"
  240.            variable.
  241.  
  242.         Changes as of 8/02/91
  243.  
  244.         1. STATE.H and STATE.INC had some incorrect structure
  245.            entries.
  246.  
  247.         Changes as of 7/19/91
  248.  
  249.         1. MASM.INC macro "externADDR" used @datasize instead
  250.            of @codesize. This affected certain memory modules.
  251.  
  252.         2. PCMIO.H was moved from the "\inc" subdirectory to
  253.            "\pas\inc". This was done for the Thunderboard code.
  254.  
  255.         3. RECFILE.EXE now has a feature to pause during recording
  256.            by typing the spacebar.
  257.  
  258.     Changes as of 7/17/91
  259.  
  260.         1. PLAYFILE.EXE has been extensively re-written to
  261.            handle .VOC files in a more efficient way.
  262.  
  263.                 2. RECFILE.EXE now records to .VOC, as well as, .WAV
  264.            formats.
  265.  
  266.         3. All the make files have been modified to remove
  267.            all references to "LIBH". This is not necessary
  268.            when using combined Microsoft libraries.
  269.  
  270.         4. Previously omitted routines for PCM polling are
  271.            now available in source code. The names are,
  272.            "EnablePCMRecord" and "EnablePCMPlay". The code
  273.            is located in \PAS\SUBS\MVSOUND\MVSOUND.ASM. These
  274.            routines are similar to "PCMPlay" and "PCMRecord",
  275.            but only setup the hardware for polling. The DMA
  276.            is not involved; therefore, once either routine is
  277.            called, the CPU must poll for all data transfers.
  278.  
  279.         5. WAVEIT.EXE had a bug that appended up to 2 extra
  280.            samples to the end of the new output file. This
  281.            caused popping on playback.
  282.  
  283.         6. MVGetHWVersion now returns a long, instead of an
  284.            int. The high word indicates a product type: 0 for
  285.            the Pro AudioSpectrum; and later, will return a 1
  286.            for the Thunderboard.
  287.  
  288.         Changes as of 7/12/91
  289.  
  290.         1. MVSOUND.SYS is now included in the tools subdirectory.
  291.  
  292.         2. \SAMPLES subdirectory has been added to provide
  293.            some sample .WAV files. Other miscellaneous data
  294.            files will also be placed here in the future.
  295.  
  296.         3. A list of all files is now included in the "\PAS"
  297.            subdirectory. The file name is CONTENTS.LST.
  298.  
  299.         4. A make file for MVI.C has been added to the \PAS\MISC
  300.            subdirectory.
  301.  
  302.         Changes as of 7/08/91
  303.  
  304.         1. In the function call, "cMVGetMixerFunction" and
  305.            "MVGetMixerFunction" the returned integer is made
  306.            up of 2 bytes. The low byte is the current mixer
  307.            setting (in percentage: 0 - 100), and the high
  308.            byte is TRUE/FALSE (0 or FF) to indicate if that
  309.            channel is active. This also affects MVSOUND.SYS,
  310.            since this routine is incorporated. The new version
  311.            number for MVSOUND.SYS is 1.03.
  312.  
  313.         2. NOTE!!! Since the tiny programming model was not
  314.            supported in Microsoft C 5.1, some of the ".C" modules
  315.            will not link correctly in tiny model; Therefore, until
  316.            furthur notice (and furthur re-writing of code...) C 6.0
  317.            will be required for tiny model. This only affects those
  318.            modules written in "C".
  319.  
  320.         3. DIALOG.C and DIALOGA.ASM both contained bugs when
  321.            used in large model. Stuff like using near pointers
  322.            instead of far, etc.
  323.  
  324.         4. An early change in the code replaced the "FFAR"
  325.            used in some .ASM modules. There is a MASM
  326.            "feature" in version 5.10 (but corrected in 5.10b)
  327.            that did not allow for equate text replacedment on
  328.            the EXTRN statement.  The new approach uses a
  329.            macro that configures the EXTRN for near/far
  330.            depending upon the selected model.
  331.  
  332.         5. The developers code release disk has been reorganized
  333.            to allow for future additions for the Thunderboard.
  334.            This change places a new directory, "inc" in the
  335.            root. This directory will hold common include files
  336.            for both the Pro Audio Spectrum and the Thunderboard.
  337.  
  338.         6. A new function has been added to the library. The
  339.            name is "InitMVHardware". It resets the hardware to
  340.            the same default state as of MVSOUND.SYS.
  341.  
  342.